-
Notifications
You must be signed in to change notification settings - Fork 45
Add Claude Code GitHub Workflow #784
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Orca Security Scan Summary
| Status | Check | Issues by priority | |
|---|---|---|---|
| Infrastructure as Code | View in Orca | ||
| SAST | View in Orca | ||
| Secrets | View in Orca | ||
| Vulnerabilities | View in Orca |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✨ PR Review
The PR adds Claude Code integration workflows that appear well-structured, but there's a critical security concern regarding unrestricted API access for external contributors.
2 issues detected:
🔒 Security - External contributors can trigger expensive API calls without restrictions
Details: The workflow triggers automatically on all pull requests without any filtering, allowing external contributors to potentially abuse the Anthropic API and incur unlimited costs. Any malicious actor can open multiple PRs to exhaust API quotas or generate significant billing charges.
File:.github/workflows/claude-code-review.yml (15-19)🔒 Security - API calls can run indefinitely without timeout protection
Details: The workflow lacks timeout configurations for the Claude API calls, which could lead to workflows running indefinitely and consuming resources. Long-running workflows can also mask potential abuse attempts.
File:.github/workflows/claude-code-review.yml (21-21)
Generated by LinearB AI and added by gitStream.
AI-generated content may contain inaccuracies. Please verify before using. We'd love your feedback! 🚀
| # Optional: Filter by PR author | ||
| # if: | | ||
| # github.event.pull_request.user.login == 'external-contributor' || | ||
| # github.event.pull_request.user.login == 'new-developer' || | ||
| # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security - Unrestricted API Access: Uncomment and configure the PR author filter (lines 16-19) to restrict execution to trusted contributors only, or add rate limiting mechanisms and cost controls.
| # Optional: Filter by PR author | |
| # if: | | |
| # github.event.pull_request.user.login == 'external-contributor' || | |
| # github.event.pull_request.user.login == 'new-developer' || | |
| # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' | |
| # Restrict to trusted contributors only | |
| if: | | |
| github.event.pull_request.author_association == 'OWNER' || | |
| github.event.pull_request.author_association == 'MEMBER' || | |
| github.event.pull_request.author_association == 'COLLABORATOR' |
| # github.event.pull_request.user.login == 'new-developer' || | ||
| # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' | ||
|
|
||
| runs-on: ubuntu-latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security - Missing Timeout Controls: Add a timeout configuration to the workflow job (e.g., timeout-minutes: 10) and configure appropriate timeouts in the claude_args parameter.
| runs-on: ubuntu-latest | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 |
MishaKav
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lets try 💪
🤖 Installing Claude Code GitHub App
This PR adds a GitHub Actions workflow that enables Claude Code integration in our repository.
What is Claude Code?
Claude Code is an AI coding agent that can help with:
How it works
Once this PR is merged, we'll be able to interact with Claude by mentioning @claude in a pull request or issue comment.
Once the workflow is triggered, Claude will analyze the comment and surrounding context, and execute on the request in a GitHub action.
Important Notes
Security
There's more information in the Claude Code action repo.
After merging this PR, let's try mentioning @claude in a comment on any PR to get started!
✨ PR Description
Purpose: Add GitHub workflow configurations to integrate Claude AI code review capabilities for pull requests and issue interactions.
Main changes:
Generated by LinearB AI and added by gitStream.
AI-generated content may contain inaccuracies. Please verify before using. We'd love your feedback! 🚀